Skip to content

Add support for Jackson 3-based HashMapper and RedisSerializer #3168

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 5 commits into from

Conversation

christophstrobl
Copy link
Member

work in progress...

pom.xml Outdated
<dependency>
<groupId>tools.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>3.0.0-rc5</version>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dependency management available: spring-projects/spring-data-build#2594

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hm... I see some test failures using that.

Copy link
Member Author

@christophstrobl christophstrobl Jul 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok, so com.fasterxml.jackson.core:jackson-annotations did, for whatever reason, not transition to tools.jackson. The outcome is as expected a mess, with both the 2.19 as well as the 3.0 BOM pointing to different versions.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh, to round things off the verion schema is different, so you need 3.0-rc5 for jackson-annotations. Not 3.0.0-rc5 as for the rest.

@christophstrobl christophstrobl force-pushed the issue/3154 branch 3 times, most recently from 20329b7 to eb1d320 Compare July 2, 2025 13:13
@mp911de mp911de marked this pull request as ready for review July 9, 2025 08:48
@mp911de mp911de added the type: enhancement A general enhancement label Jul 9, 2025
@mp911de mp911de changed the title Jackson3 based HashMapper and RedisSerializer Add support for Jackson 3-based HashMapper and RedisSerializer Jul 9, 2025
We now support Jackson 3 through a separate Jackson3HashMapper, Jackson3JsonRedisSerializer, and GenericJackson3JsonRedisSerializer.

Jackson 3 uses different defaults than Jackson 2 did therefore, we also provide configuration variants that reflect Jackson 2 behavior for smoother upgrade paths.

Original pull request: #3168
Closes #3154
mp911de added a commit that referenced this pull request Jul 9, 2025
Update since tags and copyright years. Add compatibility configuration for Jackson 2 interop when using Jackson 3-based serializers. Introduce builders for configuration. Extract flattening code and introduce adapters to avoid code duplications.

Re-enabled compatibility tests.

Original pull request: #3168
See #3154
@mp911de mp911de self-assigned this Jul 9, 2025
@mp911de mp911de added this to the 4.0 M4 (2025.1.0) milestone Jul 9, 2025
@mp911de mp911de linked an issue Jul 9, 2025 that may be closed by this pull request
Update since tags and copyright years. Add compatibility configuration for Jackson 2 interop when using Jackson 3-based serializers. Introduce builders for configuration. Extract flattening code and introduce adapters to avoid code duplications.

Re-enabled compatibility tests.

Original pull request: #3168
See #3154
mp911de pushed a commit that referenced this pull request Jul 10, 2025
We now support Jackson 3 through a separate Jackson3HashMapper, Jackson3JsonRedisSerializer, and GenericJackson3JsonRedisSerializer.

Jackson 3 uses different defaults than Jackson 2 did therefore, we also provide configuration variants that reflect Jackson 2 behavior for smoother upgrade paths.

Original pull request: #3168
Closes #3154
mp911de added a commit that referenced this pull request Jul 10, 2025
Update since tags and copyright years. Add compatibility configuration for Jackson 2 interop when using Jackson 3-based serializers. Introduce builders for configuration. Extract flattening code and introduce adapters to avoid code duplications.

Re-enabled compatibility tests.

Original pull request: #3168
See #3154
@mp911de mp911de closed this Jul 10, 2025
@mp911de mp911de deleted the issue/3154 branch July 10, 2025 07:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: enhancement A general enhancement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add support for Jackson 3
3 participants